#pragma once

#include "e2d/core/fui/PushButton.h"
#include "e2d/core/fui/ComboBox.h"
#include "e2d/core/fui/RadioButton.h"
#include "e2d/core/fui/LineEdit.h"
#include "e2d/core/fui/Image.h"
#include "e2d/core/fui/Slider.h"
#include "e2d/core/fui/PlainLineEdit.h"


namespace e2d
{
    namespace fui
    {
        struct Components
        {
            static std::vector<std::string> m_Labels;
            
            static bool AddComponent(e2d::Entity* entity, const ComponentType& type);

            static bool CopyComponents(const e2d::Entity* source, e2d::Entity* target);
        };

    };
};
